<?php

    /*
    注册 后端
    */
    // 1. 接受前端传递来的信息
    $username = $_POST['username'];
    $password = $_POST['password'];
    // $nickname = $_POST['nickname'];

    // 2. 验证一下用户名是否存在
    $sql = "SELECT * FROM `login` WHERE `username`='$username'";

    $link = mysqli_connect('localhost', 'root', 'root', 'taobao');

    $res = mysqli_query($link, $sql);

    // 因为是查询, 需要解析
    $data = mysqli_fetch_all($res, MYSQLI_ASSOC);

    // 判断 $data 的长度
    // 如果有长度说明, 说明根据这个用户名查询到数据了, 说明用户名占用了
    if (count($data)) {
    // 注册失败
    $arr = [
        "message" => "注册失败, 该用户名已经被占用",
        "code" => 2,
        "info" => $data
    ];

    echo json_encode($arr);

    // 打断 PHP 代码的继续执行
    exit;
    }

    // 如果用户名占用, 这里的代码就不需要执行了
    // 3. 把用户名密码昵称插入数据库
    $sql2 = "INSERT INTO `login` (`username`, `password`) VALUES('$username', '$password')";

    $res2 = mysqli_query($link, $sql2);

    // 插入语句不需要解析
    // 这个 mysqli_fetch_all 方法的第一个参数, 必须接受的是 mysql 的查询结果
    // 但是你给了我一个 布尔值
    // $data2 = mysqli_fetch_all($res2, MYSQLI_ASSOC);

    // 直接判断结果返回
    if ($res2) {
    $arr = [
        "message" => "注册成功",
        "code" => 1,
        "info" => $data
    ];
    } else {
    $arr = [
        "message" => "注册失败, 请联系管理员",
        "code" => 0,
        "info" => $data
    ];
    }

    // 返回结果
    echo json_encode($arr);

?>
